package procsim;

public class PaintMARMDR extends PaintTab {
    public PaintMARMDR(Paint parent) {
        super(parent);
        //Coordinates
        Design.PCout.addCoords(this, 35, 60, 111, 60);
        Design.PCout.addCoords(this, 111, 60, 111, 70);
        Design.SPout.addCoords(this, 60, 45, 127, 45);
        Design.SPout.addCoords(this, 127, 45, 127, 70);
        Design.DISPout.addCoords(this, 85, 30, 143, 30);
        Design.DISPout.addCoords(this, 143, 30, 143, 70);
        Design.ADRIVTout.addCoords(this, 120, 15, 159, 15);
        Design.ADRIVTout.addCoords(this, 159, 15, 159, 70);
        Design.Xout.addCoords(this, 210, 15, 175, 15);
        Design.Xout.addCoords(this, 175, 15, 175, 70);
        Design.TEMPDISPout.addCoords(this, 250, 30, 191, 30);
        Design.TEMPDISPout.addCoords(this, 191, 30, 191, 70);
        Design.TEMPout.addCoords(this, 285, 45, 207, 45);
        Design.TEMPout.addCoords(this, 207, 45, 207, 70);
        Design.Yout.addCoords(this, 270, 60, 223, 60);
        Design.Yout.addCoords(this, 223, 60, 223, 70);
        Design.mxMAR0.addCoords(this, 270, 100, 230, 100);
        Design.mxMAR1.addCoords(this, 270, 120, 230, 120);
        Design.mxMAR2.addCoords(this, 270, 140, 230, 140);
        Design.DBUSout.addCoords(this, 330, 60, 461, 60);
        Design.DBUSout.addCoords(this, 461, 60, 461, 70);
        Design.XHout.addCoords(this, 370, 45, 477, 45);
        Design.XHout.addCoords(this, 477, 45, 477, 70);
        Design.XLout.addCoords(this, 415, 30, 493, 30);
        Design.XLout.addCoords(this, 493, 30, 493, 70);
        Design.TEMPoutH.addCoords(this, 450, 15, 509, 15);
        Design.TEMPoutH.addCoords(this, 509, 15, 509, 70);
        Design.TEMPoutL.addCoords(this, 560, 15, 525, 15);
        Design.TEMPoutL.addCoords(this, 525, 15, 525, 70);
        Design.PCoutL.addCoords(this, 610, 30, 541, 30);
        Design.PCoutL.addCoords(this, 541, 30, 541, 70);
        Design.PCoutH.addCoords(this, 640, 45, 557, 45);
        Design.PCoutH.addCoords(this, 557, 45, 557, 70);
        Design.PSWout.addCoords(this, 680, 60, 573, 60);
        Design.PSWout.addCoords(this, 573, 60, 573, 70);
        Design.mxMDR0.addCoords(this, 620, 100, 580, 100);
        Design.mxMDR1.addCoords(this, 620, 120, 580, 120);
        Design.mxMDR2.addCoords(this, 620, 140, 580, 140);
        Design.mxMARout.addCoords(this, Design.mxMAR.getResCoords(30));
        Design.MARout.addCoords(this, Design.MAR.getOutCoords(40));
        Design.incMAR.addCoords(this, Design.MAR.getIncCoords(40));
        Design.ldMAR.addCoords(this, Design.MAR.getLdCoords(40));
        Design.mxMDRout.addCoords(this, Design.mxMDR.getResCoords(30));
        Design.MDRout.addCoords(this, Design.MDR.getOutCoords(40));
        Design.stopRD.addCoords(this, Design.MDROR.getUpper2Coords(40));
        Design.ldMDR.addCoords(this, Design.MDROR.getLower2Coords(40));
        Design.MDRORout.addCoords(this, Design.MDR.getLdCoords(20));
        Design.busHOLD.addCoords(this, Design.TSMAR.getCtrlCoords(50));
        Design.write.addCoords(this, Design.MDRbusAND.getUpper2Coords(40));
        Design.busHOLD.addCoords(this, Design.MDRbusAND.getLower2Coords(60));
        Design.MDRbusANDout.addCoords(this, Design.TSMDR.getCtrlCoords(20));
        Design.MARbus.addCoords(this, Design.TSMAR.getResCoords(28));
        Design.ABUS.addCoords(this, 70, 360, 260, 360);
        Design.MDRbus.addCoords(this, Design.TSMDR.getResCoords(28));
        Design.DBUS.addCoords(this, 420, 360, 610, 360);
        Design.read.addCoords(this, Design.rdbusAND.getUpper2Coords(40));
        Design.busHOLD.addCoords(this, Design.rdbusAND.getLower2Coords(50));
        Design.rdbusANDout.addCoords(this, Design.TSRDBUS.getCtrlCoords(20));
        Design.write.addCoords(this, Design.wrbusAND.getUpper2Coords(40));
        Design.busHOLD.addCoords(this, Design.wrbusAND.getLower2Coords(50));
        Design.wrbusANDout.addCoords(this, Design.TSWRBUS.getCtrlCoords(20));
        Design.rd.addCoords(this, Design.TSRDBUS.getInCoords(15));
        Design.rdbus.addCoords(this, Design.TSRDBUS.getResCoords(25));
        Design.RDBUS.addCoords(this, 70, 460, 260, 460);
        Design.wr.addCoords(this, Design.TSWRBUS.getInCoords(15));
        Design.wrbus.addCoords(this, Design.TSWRBUS.getResCoords(25));
        Design.WRBUS.addCoords(this, 420, 460, 610, 460);

        //Collections
        elements.add(Design.mxMAR);
        elements.add(Design.mxMDR);
        elements.add(Design.MAR);
        elements.add(Design.MDR);
        elements.add(Design.TSRDBUS);
        elements.add(Design.TSWRBUS);
        elements.add(Design.TSMAR);
        elements.add(Design.TSMDR);
        elements.add(Design.MDRbusAND);
        elements.add(Design.rdbusAND);
        elements.add(Design.wrbusAND);
        elements.add(Design.MDROR);

        lines.add(Design.ABUS);
        lines.add(Design.DBUS);
        lines.add(Design.RDBUS);
        lines.add(Design.WRBUS);
        lines.add(Design.DISPout);
        lines.add(Design.SPout);
        lines.add(Design.PCout);
        lines.add(Design.ADRIVTout);
        lines.add(Design.Xout);
        lines.add(Design.TEMPDISPout);
        lines.add(Design.TEMPout);
        lines.add(Design.Yout);
        lines.add(Design.PSWout);
        lines.add(Design.DBUSout);
        lines.add(Design.PCoutH);
        lines.add(Design.PCoutL);
        lines.add(Design.TEMPoutH);
        lines.add(Design.TEMPoutL);
        lines.add(Design.XHout);
        lines.add(Design.XLout);
        lines.add(Design.mxMARout);
        lines.add(Design.mxMDRout);
        lines.add(Design.MARout);
        lines.add(Design.MDRout);
        lines.add(Design.MARbus);
        lines.add(Design.MDRbus);
        lines.add(Design.busHOLD);
        lines.add(Design.write);
        lines.add(Design.read);
        lines.add(Design.MDRbusANDout);
        lines.add(Design.rdbusANDout);
        lines.add(Design.wrbusANDout);
        lines.add(Design.rd);
        lines.add(Design.wr);
        lines.add(Design.rdbus);
        lines.add(Design.wrbus);
        lines.add(Design.ldMAR);
        lines.add(Design.incMAR);
        lines.add(Design.stopRD);
        lines.add(Design.ldMDR);
        lines.add(Design.MDRORout);
        lines.add(Design.mxMAR0);
        lines.add(Design.mxMAR1);
        lines.add(Design.mxMAR2);
        lines.add(Design.mxMDR0);
        lines.add(Design.mxMDR1);
        lines.add(Design.mxMDR2);
    }
}
